diff options
author | Tobias Bosch <tbosch@google.com> | 2019-08-13 09:04:46 -0700 |
---|---|---|
committer | Tobias Bosch <tbosch@google.com> | 2019-08-13 18:42:04 +0000 |
commit | caf583bca202cd1c5b3ae75e03073cba105f5e6d (patch) | |
tree | 6c37e64f7fef117a1cd8103466ca445bab153a58 /compiler_wrapper | |
parent | b30a1ed8f990b24980ca5c6ceeaedfb806c48521 (diff) | |
download | toolchain-utils-caf583bca202cd1c5b3ae75e03073cba105f5e6d.tar.gz |
Create a goldenfile for every section.
Previously, a golden file contained multiple names sections.
This change splits these into separate files, making
changes easier to compare.
BUG=chromium:773875
TEST=unit test
Change-Id: Icffec335601297f504f98c4ff1654238f7838080
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1752523
Tested-by: Tobias Bosch <tbosch@google.com>
Reviewed-by: George Burgess <gbiv@chromium.org>
Diffstat (limited to 'compiler_wrapper')
56 files changed, 10664 insertions, 10807 deletions
diff --git a/compiler_wrapper/cros_hardened_config_test.go b/compiler_wrapper/cros_hardened_config_test.go index 0a0a4022..d2f4214e 100644 --- a/compiler_wrapper/cros_hardened_config_test.go +++ b/compiler_wrapper/cros_hardened_config_test.go @@ -10,19 +10,20 @@ import ( "path" "path/filepath" "regexp" + "strings" "testing" ) const oldHardenedWrapperPathForTest = "/usr/x86_64-pc-linux-gnu/x86_64-cros-linux-gnu/gcc-bin/4.9.x/sysroot_wrapper.hardened" -const crosHardenedGoldenFile = "testdata/cros_hardened_golden.json" -const crosHardenedNoCCacheGoldenFile = "testdata/cros_hardened_noccache_golden.json" +const crosHardenedGoldenDir = "testdata/cros_hardened_golden" +const crosHardenedNoCCacheGoldenDir = "testdata/cros_hardened_noccache_golden" func TestCrosHardenedConfig(t *testing.T) { withTestContext(t, func(ctx *testContext) { useCCache := true ctx.updateConfig(oldHardenedWrapperPathForTest, getCrosHardenedConfig(useCCache)) - runGoldenRecords(ctx, crosHardenedGoldenFile, createSyswrapperGoldenInputs(ctx)) + runGoldenRecords(ctx, crosHardenedGoldenDir, createSyswrapperGoldenInputs(ctx)) }) } @@ -48,7 +49,7 @@ func TestCrosHardenedConfigWithoutCCache(t *testing.T) { gomaPath := path.Join(ctx.tempDir, "gomacc") ctx.writeFile(gomaPath, "") gomaEnv := "GOMACC_PATH=" + gomaPath - runGoldenRecords(ctx, crosHardenedNoCCacheGoldenFile, []goldenRecordSection{ + runGoldenRecords(ctx, crosHardenedNoCCacheGoldenDir, []goldenFile{ createGccPathGoldenInputs(gomaEnv), createClangPathGoldenInputs(gomaEnv), createClangSyntaxGoldenInputs(gomaEnv), @@ -59,12 +60,12 @@ func TestCrosHardenedConfigWithoutCCache(t *testing.T) { }) } -func createSyswrapperGoldenInputs(ctx *testContext) []goldenRecordSection { +func createSyswrapperGoldenInputs(ctx *testContext) []goldenFile { gomaPath := path.Join(ctx.tempDir, "gomacc") ctx.writeFile(gomaPath, "") gomaEnv := "GOMACC_PATH=" + gomaPath - return []goldenRecordSection{ + return []goldenFile{ createGccPathGoldenInputs(gomaEnv), createGoldenInputsForAllTargets("gcc", mainCc), createSysrootWrapperCommonGoldenInputs("gcc", gomaEnv), @@ -83,9 +84,10 @@ func createSyswrapperGoldenInputs(ctx *testContext) []goldenRecordSection { } } -func createGoldenInputsForAllTargets(compiler string, args ...string) goldenRecordSection { - return goldenRecordSection{ - Name: fmt.Sprintf("%s %s target specific", compiler, args), +func createGoldenInputsForAllTargets(compiler string, args ...string) goldenFile { + argsReplacer := strings.NewReplacer(".", "", "-", "") + return goldenFile{ + Name: fmt.Sprintf("%s_%s_target_specific.json", compiler, argsReplacer.Replace(strings.Join(args, "_"))), Records: []goldenRecord{ { WrapperCmd: newGoldenCmd("./x86_64-cros-linux-gnu-"+compiler, args...), @@ -127,9 +129,9 @@ func createGoldenInputsForAllTargets(compiler string, args ...string) goldenReco } } -func createBisectGoldenInputs() goldenRecordSection { - return goldenRecordSection{ - Name: "bisect", +func createBisectGoldenInputs() goldenFile { + return goldenFile{ + Name: "bisect.json", // Disable comparing to the old wrapper as that calls the bisect_driver // directly from python, and the new wrapper calls it via a separate // sub command. @@ -155,9 +157,9 @@ func createBisectGoldenInputs() goldenRecordSection { } } -func createForceDisableWErrorGoldenInputs() goldenRecordSection { - return goldenRecordSection{ - Name: "force disable werror", +func createForceDisableWErrorGoldenInputs() goldenFile { + return goldenFile{ + Name: "force_disable_werror.json", Records: []goldenRecord{ { WrapperCmd: newGoldenCmd(clangX86_64, mainCc), @@ -190,9 +192,9 @@ func createForceDisableWErrorGoldenInputs() goldenRecordSection { } } -func createGccPathGoldenInputs(gomaEnv string) goldenRecordSection { - return goldenRecordSection{ - Name: "gcc path", +func createGccPathGoldenInputs(gomaEnv string) goldenFile { + return goldenFile{ + Name: "gcc_path.json", Records: []goldenRecord{ { WrapperCmd: newGoldenCmd("./x86_64-cros-linux-gnu-gcc", mainCc), @@ -206,9 +208,9 @@ func createGccPathGoldenInputs(gomaEnv string) goldenRecordSection { } } -func createClangPathGoldenInputs(gomaEnv string) goldenRecordSection { - return goldenRecordSection{ - Name: "clang path", +func createClangPathGoldenInputs(gomaEnv string) goldenFile { + return goldenFile{ + Name: "clang_path.json", Records: []goldenRecord{ { WrapperCmd: newGoldenCmd("./x86_64-cros-linux-gnu-clang", mainCc), @@ -253,10 +255,10 @@ func createClangPathGoldenInputs(gomaEnv string) goldenRecordSection { } } -func createClangTidyGoldenInputs(gomaEnv string) goldenRecordSection { +func createClangTidyGoldenInputs(gomaEnv string) goldenFile { tidyEnv := "WITH_TIDY=1" - return goldenRecordSection{ - Name: "clang-tidy", + return goldenFile{ + Name: "clangtidy.json", Records: []goldenRecord{ { WrapperCmd: newGoldenCmd(clangX86_64, mainCc), @@ -301,9 +303,9 @@ func createClangTidyGoldenInputs(gomaEnv string) goldenRecordSection { } } -func createClangSyntaxGoldenInputs(gomaEnv string) goldenRecordSection { - return goldenRecordSection{ - Name: "gcc clang-syntax", +func createClangSyntaxGoldenInputs(gomaEnv string) goldenFile { + return goldenFile{ + Name: "gcc_clang_syntax.json", Records: []goldenRecord{ { WrapperCmd: newGoldenCmd(gccX86_64, "-clang-syntax", mainCc), @@ -335,11 +337,11 @@ func createClangSyntaxGoldenInputs(gomaEnv string) goldenRecordSection { } } -func createSysrootWrapperCommonGoldenInputs(compiler string, gomaEnv string) goldenRecordSection { +func createSysrootWrapperCommonGoldenInputs(compiler string, gomaEnv string) goldenFile { // We are using a fixed target as all of the following args are target independent. wrapperPath := "./x86_64-cros-linux-gnu-" + compiler - return goldenRecordSection{ - Name: compiler + " sysroot wrapper common", + return goldenFile{ + Name: compiler + "_sysroot_wrapper_common.json", Records: []goldenRecord{ { WrapperCmd: newGoldenCmd(gccX86_64, "-noccache", mainCc), @@ -371,11 +373,11 @@ func createSysrootWrapperCommonGoldenInputs(compiler string, gomaEnv string) gol } } -func createSanitizerGoldenInputs(compiler string) goldenRecordSection { +func createSanitizerGoldenInputs(compiler string) goldenFile { // We are using a fixed target as all of the following args are target independent. wrapperPath := "./x86_64-cros-linux-gnu-" + compiler - return goldenRecordSection{ - Name: compiler + " sanitizer args", + return goldenFile{ + Name: compiler + "_sanitizer_args.json", Records: []goldenRecord{ { WrapperCmd: newGoldenCmd(wrapperPath, "-fsanitize=kernel-address", "-Wl,--no-undefined", mainCc), @@ -401,9 +403,9 @@ func createSanitizerGoldenInputs(compiler string) goldenRecordSection { } } -func createGccArgsGoldenInputs() goldenRecordSection { - return goldenRecordSection{ - Name: "gcc specific args", +func createGccArgsGoldenInputs() goldenFile { + return goldenFile{ + Name: "gcc_specific_args.json", Records: []goldenRecord{ { WrapperCmd: newGoldenCmd(gccX86_64, "-march=goldmont", mainCc), @@ -421,9 +423,9 @@ func createGccArgsGoldenInputs() goldenRecordSection { } } -func createClangArgsGoldenInputs() goldenRecordSection { - return goldenRecordSection{ - Name: "clang specific args", +func createClangArgsGoldenInputs() goldenFile { + return goldenFile{ + Name: "clang_specific_args.json", Records: []goldenRecord{ { WrapperCmd: newGoldenCmd(clangX86_64, "-mno-movbe", "-pass-exit-codes", "-Wclobbered", "-Wno-psabi", "-Wlogical-op", diff --git a/compiler_wrapper/cros_host_config_test.go b/compiler_wrapper/cros_host_config_test.go index 901fa896..7ccdf3fb 100644 --- a/compiler_wrapper/cros_host_config_test.go +++ b/compiler_wrapper/cros_host_config_test.go @@ -11,8 +11,8 @@ import ( const oldClangHostWrapperPathForTest = "/usr/bin/clang_host_wrapper" const oldGccHostWrapperPathForTest = "../src/third_party/chromiumos-overlay/sys-devel/gcc/files/host_wrapper" -const crosClangHostGoldenFile = "testdata/cros_clang_host_golden.json" -const crosGccHostGoldenFile = "testdata/cros_gcc_host_golden.json" +const crosClangHostGoldenDir = "testdata/cros_clang_host_golden" +const crosGccHostGoldenDir = "testdata/cros_gcc_host_golden" func TestCrosClangHostConfig(t *testing.T) { withTestContext(t, func(ctx *testContext) { @@ -22,7 +22,7 @@ func TestCrosClangHostConfig(t *testing.T) { ctx.writeFile(gomaPath, "") gomaEnv := "GOMACC_PATH=" + gomaPath - goldenSections := []goldenRecordSection{ + goldenFiles := []goldenFile{ createClangPathGoldenInputs(gomaEnv), createGoldenInputsForAllTargets("clang", mainCc), createGoldenInputsForAllTargets("clang", "-ftrapv", mainCc), @@ -33,7 +33,7 @@ func TestCrosClangHostConfig(t *testing.T) { createClangTidyGoldenInputs(gomaEnv), } - runGoldenRecords(ctx, crosClangHostGoldenFile, goldenSections) + runGoldenRecords(ctx, crosClangHostGoldenDir, goldenFiles) }) } @@ -47,12 +47,12 @@ func TestCrosGccHostConfig(t *testing.T) { // Note: The old gcc host wrapper is very limited and only adds flags. // So we only test very few things here. - goldenSections := []goldenRecordSection{ + goldenFiles := []goldenFile{ createGccPathGoldenInputs(gomaEnv), createGoldenInputsForAllTargets("gcc", mainCc), createGccArgsGoldenInputs(), } - runGoldenRecords(ctx, crosGccHostGoldenFile, goldenSections) + runGoldenRecords(ctx, crosGccHostGoldenDir, goldenFiles) }) } diff --git a/compiler_wrapper/cros_nonhardened_config_test.go b/compiler_wrapper/cros_nonhardened_config_test.go index 2753e306..41e3d7c9 100644 --- a/compiler_wrapper/cros_nonhardened_config_test.go +++ b/compiler_wrapper/cros_nonhardened_config_test.go @@ -9,13 +9,13 @@ import ( ) const oldNonHardenedWrapperPathForTest = "/usr/x86_64-pc-linux-gnu/arm-none-eabi/gcc-bin/4.9.x/sysroot_wrapper" -const crosNonHardenedGoldenFile = "testdata/cros_nonhardened_golden.json" +const crosNonHardenedGoldenDir = "testdata/cros_nonhardened_golden" func TestCrosNonHardenedConfig(t *testing.T) { withTestContext(t, func(ctx *testContext) { useCCache := true ctx.updateConfig(oldNonHardenedWrapperPathForTest, getCrosNonHardenedConfig(useCCache)) - runGoldenRecords(ctx, crosNonHardenedGoldenFile, createSyswrapperGoldenInputs(ctx)) + runGoldenRecords(ctx, crosNonHardenedGoldenDir, createSyswrapperGoldenInputs(ctx)) }) } diff --git a/compiler_wrapper/goldenutil_test.go b/compiler_wrapper/goldenutil_test.go index ddd176d6..2b6463df 100644 --- a/compiler_wrapper/goldenutil_test.go +++ b/compiler_wrapper/goldenutil_test.go @@ -20,7 +20,7 @@ import ( var updateGoldenFiles = flag.Bool("updategolden", false, "update golden files") var filterGoldenTests = flag.String("rungolden", "", "regex filter for golden tests to run") -type goldenRecordSection struct { +type goldenFile struct { Name string `json:"name"` ignoreOldWrapper bool Records []goldenRecord `json:"records"` @@ -55,70 +55,76 @@ var errorResult = commandResult{ } var errorResults = []commandResult{errorResult} -func runGoldenRecords(ctx *testContext, goldenFile string, sections []goldenRecordSection) { +func runGoldenRecords(ctx *testContext, goldenDir string, files []goldenFile) { if filterPattern := *filterGoldenTests; filterPattern != "" { - sections = filterGoldenRecords(filterPattern, sections) + files = filterGoldenRecords(filterPattern, files) } - if len(sections) == 0 { + if len(files) == 0 { ctx.t.Errorf("No goldenrecords given.") return } - sections = fillGoldenResults(ctx, sections) + files = fillGoldenResults(ctx, files) if *updateGoldenFiles { - log.Printf("updating golden file under %s", goldenFile) - if err := os.MkdirAll(filepath.Dir(goldenFile), 0777); err != nil { + log.Printf("updating golden files under %s", goldenDir) + if err := os.MkdirAll(goldenDir, 0777); err != nil { ctx.t.Fatal(err) } - goldenFile, err := os.Create(goldenFile) - if err != nil { - ctx.t.Fatal(err) - } - defer goldenFile.Close() + for _, file := range files { + fileHandle, err := os.Create(filepath.Join(goldenDir, file.Name)) + if err != nil { + ctx.t.Fatal(err) + } + defer fileHandle.Close() - writeGoldenRecords(ctx, goldenFile, sections) - } else { - compareBuffer := &bytes.Buffer{} - writeGoldenRecords(ctx, compareBuffer, sections) - goldenFileData, err := ioutil.ReadFile(goldenFile) - if err != nil { - ctx.t.Fatal(err) + writeGoldenRecords(ctx, fileHandle, file.Records) } - if !bytes.Equal(compareBuffer.Bytes(), goldenFileData) { - ctx.t.Fatalf("Commands don't match the golden file under %s. Please regenerate via -updategolden to check the differences.", - goldenFile) + } else { + for _, file := range files { + compareBuffer := &bytes.Buffer{} + writeGoldenRecords(ctx, compareBuffer, file.Records) + filePath := filepath.Join(goldenDir, file.Name) + goldenFileData, err := ioutil.ReadFile(filePath) + if err != nil { + ctx.t.Error(err) + continue + } + if !bytes.Equal(compareBuffer.Bytes(), goldenFileData) { + ctx.t.Errorf("Commands don't match the golden file under %s. Please regenerate via -updategolden to check the differences.", + filePath) + } } } } -func filterGoldenRecords(pattern string, sections []goldenRecordSection) []goldenRecordSection { +func filterGoldenRecords(pattern string, files []goldenFile) []goldenFile { matcher := regexp.MustCompile(pattern) - newSections := []goldenRecordSection{} - for _, section := range sections { + newFiles := []goldenFile{} + for _, file := range files { newRecords := []goldenRecord{} - for _, record := range section.Records { + for _, record := range file.Records { cmd := record.WrapperCmd.Cmd str := strings.Join(append(append(record.Env, cmd.Path), cmd.Args...), " ") if matcher.MatchString(str) { newRecords = append(newRecords, record) } } - section.Records = newRecords - newSections = append(newSections, section) + file.Records = newRecords + newFiles = append(newFiles, file) } - return newSections + return newFiles } -func fillGoldenResults(ctx *testContext, sections []goldenRecordSection) []goldenRecordSection { +func fillGoldenResults(ctx *testContext, files []goldenFile) []goldenFile { oldWrapperPath := ctx.cfg.oldWrapperPath - newSections := []goldenRecordSection{} - for _, section := range sections { + newFiles := []goldenFile{} + for _, file := range files { ctx.cfg.oldWrapperPath = oldWrapperPath - if section.ignoreOldWrapper { + if file.ignoreOldWrapper { ctx.cfg.oldWrapperPath = "" } newRecords := []goldenRecord{} - for _, record := range section.Records { + for _, record := range file.Records { newCmds := []commandResult{} ctx.cmdMock = func(cmd *command, stdout io.Writer, stderr io.Writer) error { if len(newCmds) >= len(record.Cmds) { @@ -160,13 +166,13 @@ func fillGoldenResults(ctx *testContext, sections []goldenRecordSection) []golde record.WrapperCmd.Stderr = ctx.stderrString() newRecords = append(newRecords, record) } - section.Records = newRecords - newSections = append(newSections, section) + file.Records = newRecords + newFiles = append(newFiles, file) } - return newSections + return newFiles } -func writeGoldenRecords(ctx *testContext, writer io.Writer, sections []goldenRecordSection) { +func writeGoldenRecords(ctx *testContext, writer io.Writer, records []goldenRecord) { // Replace the temp dir with a stable path so that the goldens stay stable. stableTempDir := filepath.Join(filepath.Dir(ctx.tempDir), "stable") writer = &replacingWriter{ @@ -176,7 +182,7 @@ func writeGoldenRecords(ctx *testContext, writer io.Writer, sections []goldenRec } enc := json.NewEncoder(writer) enc.SetIndent("", " ") - if err := enc.Encode(sections); err != nil { + if err := enc.Encode(records); err != nil { ctx.t.Fatal(err) } } diff --git a/compiler_wrapper/testdata/cros_clang_host_golden.json b/compiler_wrapper/testdata/cros_clang_host_golden.json deleted file mode 100644 index 0bb9332c..00000000 --- a/compiler_wrapper/testdata/cros_clang_host_golden.json +++ /dev/null @@ -1,1695 +0,0 @@ -[ - { - "name": "clang path", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang++", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang++", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "CLANG=somepath/clang" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "somepath/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/somedir/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/somedir/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/somedir/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang [main.cc] target specific", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-eabi-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-win-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-eabi-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-win-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-eabi-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-win-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - } - ] - }, - { - "name": "clang [-ftrapv main.cc] target specific", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-eabi-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-win-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-eabi-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-win-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-eabi-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-win-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - } - ] - }, - { - "name": "clang sanitizer args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-Wl,--no-undefined", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-fsanitize=kernel-address", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-Wl,-z,defs", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-fsanitize=kernel-address", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=1", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-fsanitize=kernel-address", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=2", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-fsanitize=kernel-address", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=fuzzer", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-fno-experimental-new-pass-manager", - "-fsanitize=fuzzer", - "main.cc" - ] - } - } - ] - } - ] - }, - { - "name": "clang specific args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-mno-movbe", - "-pass-exit-codes", - "-Wclobbered", - "-Wno-psabi", - "-Wlogical-op", - "-Wmissing-parameter-type", - "-Wold-style-declaration", - "-Woverride-init", - "-Wunsafe-loop-optimizations", - "-Wstrict-aliasing=abc", - "-finline-limit=abc", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-error=cpp", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-#warnings", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-error=maybe-uninitialized", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-error=uninitialized", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-error=unused-but-set-variable", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-error=unused-variable", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-unused-but-set-variable", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-unused-variable", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wunused-but-set-variable", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wunused-variable", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-only=-someflag", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-someflag", - "main.cc" - ] - } - } - ] - } - ] - }, - { - "name": "bisect", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "BISECT_STAGE=someBisectStage", - "BISECT_DIR=someBisectDir" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/python2", - "args": [ - "-c", - "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", - "someBisectStage", - "someBisectDir", - "/tmp/stable/clang", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "BISECT_STAGE=someBisectStage", - "BISECT_DIR=someBisectDir" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/python2", - "args": [ - "-c", - "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", - "someBisectStage", - "someBisectDir", - "/tmp/stable/clang", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "force disable werror", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc", - "-Wno-error" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc", - "-Wno-error" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang-tidy", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/tmp/stable/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/tmp/stable/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerrorclang-tidy failed" - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/tmp/stable/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/tmp/stable/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/clang", - "args": [ - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - } -] diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json b/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json new file mode 100644 index 00000000..a3218c5f --- /dev/null +++ b/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json @@ -0,0 +1,84 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/tmp/stable/clang", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/tmp/stable/clang", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json new file mode 100644 index 00000000..74f7658d --- /dev/null +++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json @@ -0,0 +1,272 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json new file mode 100644 index 00000000..4f908037 --- /dev/null +++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json @@ -0,0 +1,263 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json new file mode 100644 index 00000000..a9a5d32e --- /dev/null +++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json @@ -0,0 +1,259 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang++", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang++", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "CLANG=somepath/clang" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "somepath/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/somedir/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/somedir/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/somedir/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json new file mode 100644 index 00000000..3bd1c0d6 --- /dev/null +++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json @@ -0,0 +1,162 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-Wl,--no-undefined", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fsanitize=kernel-address", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-Wl,-z,defs", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fsanitize=kernel-address", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=1", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fsanitize=kernel-address", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fsanitize=kernel-address", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=fuzzer", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fno-experimental-new-pass-manager", + "-fsanitize=fuzzer", + "main.cc" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json new file mode 100644 index 00000000..e0358ba1 --- /dev/null +++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json @@ -0,0 +1,228 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-mno-movbe", + "-pass-exit-codes", + "-Wclobbered", + "-Wno-psabi", + "-Wlogical-op", + "-Wmissing-parameter-type", + "-Wold-style-declaration", + "-Woverride-init", + "-Wunsafe-loop-optimizations", + "-Wstrict-aliasing=abc", + "-finline-limit=abc", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=cpp", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-#warnings", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=maybe-uninitialized", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-error=uninitialized", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=unused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-error=unused-variable", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-unused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-unused-variable", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wunused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wunused-variable", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-only=-someflag", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-someflag", + "main.cc" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json b/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json new file mode 100644 index 00000000..740dea13 --- /dev/null +++ b/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json @@ -0,0 +1,260 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/tmp/stable/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/tmp/stable/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerrorclang-tidy failed" + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/tmp/stable/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/tmp/stable/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json new file mode 100644 index 00000000..1c629fa8 --- /dev/null +++ b/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json @@ -0,0 +1,141 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc", + "-Wno-error" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc", + "-Wno-error" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_gcc_host_golden.json b/compiler_wrapper/testdata/cros_gcc_host_golden.json deleted file mode 100644 index b7b79e04..00000000 --- a/compiler_wrapper/testdata/cros_gcc_host_golden.json +++ /dev/null @@ -1,365 +0,0 @@ -[ - { - "name": "gcc path", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "gcc [main.cc] target specific", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-eabi-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-eabi-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-win-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-win-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./armv7m-cros-linux-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-eabi-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./armv7m-cros-linux-eabi-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-win-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./armv7m-cros-win-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./armv8m-cros-linux-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-eabi-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./armv8m-cros-linux-eabi-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-win-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./armv8m-cros-win-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "main.cc" - ] - } - } - ] - } - ] - }, - { - "name": "gcc specific args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-march=goldmont", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-march=goldmont", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-march=goldmont-plus", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-march=goldmont-plus", - "main.cc" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-march=skylake", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-march=skylake", - "main.cc" - ] - } - } - ] - } - ] - } -] diff --git a/compiler_wrapper/testdata/cros_gcc_host_golden/gcc_maincc_target_specific.json b/compiler_wrapper/testdata/cros_gcc_host_golden/gcc_maincc_target_specific.json new file mode 100644 index 00000000..c0f9ecdb --- /dev/null +++ b/compiler_wrapper/testdata/cros_gcc_host_golden/gcc_maincc_target_specific.json @@ -0,0 +1,218 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-eabi-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-win-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./armv7m-cros-linux-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./armv7m-cros-linux-eabi-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./armv7m-cros-win-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./armv8m-cros-linux-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./armv8m-cros-linux-eabi-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./armv8m-cros-win-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_gcc_host_golden/gcc_path.json b/compiler_wrapper/testdata/cros_gcc_host_golden/gcc_path.json new file mode 100644 index 00000000..a027446e --- /dev/null +++ b/compiler_wrapper/testdata/cros_gcc_host_golden/gcc_path.json @@ -0,0 +1,56 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_gcc_host_golden/gcc_specific_args.json b/compiler_wrapper/testdata/cros_gcc_host_golden/gcc_specific_args.json new file mode 100644 index 00000000..e1470474 --- /dev/null +++ b/compiler_wrapper/testdata/cros_gcc_host_golden/gcc_specific_args.json @@ -0,0 +1,80 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-march=goldmont", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-march=goldmont", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-march=goldmont-plus", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-march=goldmont-plus", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-march=skylake", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-march=skylake", + "main.cc" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden.json b/compiler_wrapper/testdata/cros_hardened_golden.json deleted file mode 100644 index 1b318f7b..00000000 --- a/compiler_wrapper/testdata/cros_hardened_golden.json +++ /dev/null @@ -1,3952 +0,0 @@ -[ - { - "name": "gcc path", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "gcc [main.cc] target specific", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-eabi-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-eabi-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-eabi", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-win-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-win-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-win-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv7m-cros-linux-gnu-gcc.real", - "--sysroot=/usr/armv7m-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-eabi-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv7m-cros-linux-eabi-gcc.real", - "--sysroot=/usr/armv7m-cros-linux-eabi", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-win-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv7m-cros-win-gnu-gcc.real", - "--sysroot=/usr/armv7m-cros-win-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv8m-cros-linux-gnu-gcc.real", - "--sysroot=/usr/armv8m-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-eabi-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv8m-cros-linux-eabi-gcc.real", - "--sysroot=/usr/armv8m-cros-linux-eabi", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-win-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv8m-cros-win-gnu-gcc.real", - "--sysroot=/usr/armv8m-cros-win-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - } - ] - }, - { - "name": "gcc sysroot wrapper common", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-noccache", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=someNonExistingPath" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-nopie", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-D__KERNEL__", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-fno-stack-protector", - "-D__KERNEL__", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "--sysroot=xyz", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "--sysroot=xyz", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - } - ] - }, - { - "name": "gcc sanitizer args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=kernel-address", - "-Wl,--no-undefined", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=kernel-address", - "-Wl,-z,defs", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=1", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=2", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=fuzzer", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-fsanitize=fuzzer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - } - ] - }, - { - "name": "gcc specific args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-march=goldmont", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-march=silvermont", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-march=goldmont-plus", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-march=silvermont", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-march=skylake", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-march=corei7", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - } - ] - }, - { - "name": "gcc clang-syntax", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - } - }, - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - } - }, - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang path", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang++", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang++", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "CLANG=somepath/clang" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "somepath/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "/somedir/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "/somedir/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "/somedir/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang [main.cc] target specific", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-eabi-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-eabi", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-win-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-win-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-eabi-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-linux-eabi", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-win-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-win-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-eabi-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-linux-eabi", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-win-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-win-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "clang [-ftrapv main.cc] target specific", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-eabi-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-eabi", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-win-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-win-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-eabi-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-linux-eabi", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-win-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-win-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-eabi-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-linux-eabi", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-win-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-win-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-mthumb", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "clang sysroot wrapper common", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-noccache", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=someNonExistingPath" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-nopie", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-D__KERNEL__", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-fno-stack-protector", - "-D__KERNEL__", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "--sysroot=xyz", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "--sysroot=xyz", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "clang sanitizer args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-Wl,--no-undefined", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-Wl,-z,defs", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=1", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=2", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=fuzzer", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-fno-omit-frame-pointer", - "-fno-experimental-new-pass-manager", - "-fsanitize=fuzzer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "clang specific args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-mno-movbe", - "-pass-exit-codes", - "-Wclobbered", - "-Wno-psabi", - "-Wlogical-op", - "-Wmissing-parameter-type", - "-Wold-style-declaration", - "-Woverride-init", - "-Wunsafe-loop-optimizations", - "-Wstrict-aliasing=abc", - "-finline-limit=abc", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-error=cpp", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-Wno-#warnings", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-error=maybe-uninitialized", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-Wno-error=uninitialized", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-error=unused-but-set-variable", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-Wno-error=unused-variable", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-unused-but-set-variable", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-Wno-unused-variable", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wunused-but-set-variable", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-Wunused-variable", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-only=-someflag", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-someflag", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "bisect", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "BISECT_STAGE=someBisectStage", - "BISECT_DIR=someBisectDir" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/python2", - "args": [ - "-c", - "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", - "someBisectStage", - "someBisectDir", - "/usr/bin/ccache", - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "BISECT_STAGE=someBisectStage", - "BISECT_DIR=someBisectDir" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/python2", - "args": [ - "-c", - "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", - "someBisectStage", - "someBisectDir", - "/usr/bin/ccache", - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "force disable werror", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-Wno-error" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-Wno-error" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang-tidy", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - }, - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerrorclang-tidy failed" - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - } -] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/bisect.json b/compiler_wrapper/testdata/cros_hardened_golden/bisect.json new file mode 100644 index 00000000..8ea10ed9 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/bisect.json @@ -0,0 +1,116 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/usr/bin/ccache", + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/usr/bin/ccache", + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json new file mode 100644 index 00000000..a6fa699f --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json @@ -0,0 +1,425 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-eabi", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-win-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-linux-eabi", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-win-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-linux-eabi", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-win-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json new file mode 100644 index 00000000..3398782e --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json @@ -0,0 +1,407 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-eabi", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-win-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-linux-eabi", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-win-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-linux-eabi", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-win-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json new file mode 100644 index 00000000..d838707a --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json @@ -0,0 +1,365 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang++", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang++", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "CLANG=somepath/clang" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "somepath/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "/somedir/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "/somedir/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "/somedir/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json new file mode 100644 index 00000000..83eebc81 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json @@ -0,0 +1,237 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-Wl,--no-undefined", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-fno-omit-frame-pointer", + "-fsanitize=kernel-address", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-Wl,-z,defs", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-fno-omit-frame-pointer", + "-fsanitize=kernel-address", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=1", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-fno-omit-frame-pointer", + "-fsanitize=kernel-address", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-fno-omit-frame-pointer", + "-fsanitize=kernel-address", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=fuzzer", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-fno-omit-frame-pointer", + "-fno-experimental-new-pass-manager", + "-fsanitize=fuzzer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json new file mode 100644 index 00000000..af8a1435 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json @@ -0,0 +1,340 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-mno-movbe", + "-pass-exit-codes", + "-Wclobbered", + "-Wno-psabi", + "-Wlogical-op", + "-Wmissing-parameter-type", + "-Wold-style-declaration", + "-Woverride-init", + "-Wunsafe-loop-optimizations", + "-Wstrict-aliasing=abc", + "-finline-limit=abc", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=cpp", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-Wno-#warnings", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=maybe-uninitialized", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-Wno-error=uninitialized", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=unused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-Wno-error=unused-variable", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-unused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-Wno-unused-variable", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wunused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-Wunused-variable", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-only=-someflag", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-someflag", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json new file mode 100644 index 00000000..a39f9082 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json @@ -0,0 +1,259 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-noccache", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=someNonExistingPath" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-nopie", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-D__KERNEL__", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-fno-stack-protector", + "-D__KERNEL__", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "--sysroot=xyz", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "--sysroot=xyz", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json b/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json new file mode 100644 index 00000000..6776196f --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json @@ -0,0 +1,335 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + }, + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerrorclang-tidy failed" + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json new file mode 100644 index 00000000..aed56d07 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json @@ -0,0 +1,221 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-Wno-error" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-Wno-error" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json new file mode 100644 index 00000000..572f5531 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json @@ -0,0 +1,249 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + } + }, + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + } + }, + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json new file mode 100644 index 00000000..76d38599 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json @@ -0,0 +1,329 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-eabi-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-eabi", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-win-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-win-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv7m-cros-linux-gnu-gcc.real", + "--sysroot=/usr/armv7m-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv7m-cros-linux-eabi-gcc.real", + "--sysroot=/usr/armv7m-cros-linux-eabi", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv7m-cros-win-gnu-gcc.real", + "--sysroot=/usr/armv7m-cros-win-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv8m-cros-linux-gnu-gcc.real", + "--sysroot=/usr/armv8m-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv8m-cros-linux-eabi-gcc.real", + "--sysroot=/usr/armv8m-cros-linux-eabi", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv8m-cros-win-gnu-gcc.real", + "--sysroot=/usr/armv8m-cros-win-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-mthumb", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json new file mode 100644 index 00000000..94cda05d --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json @@ -0,0 +1,82 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json new file mode 100644 index 00000000..bddac1d2 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json @@ -0,0 +1,201 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=kernel-address", + "-Wl,--no-undefined", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-fsanitize=kernel-address", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=kernel-address", + "-Wl,-z,defs", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-fsanitize=kernel-address", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=1", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-fsanitize=kernel-address", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-fsanitize=kernel-address", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=fuzzer", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-fsanitize=fuzzer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json new file mode 100644 index 00000000..b7a56ce4 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json @@ -0,0 +1,119 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-march=goldmont", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-march=silvermont", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-march=goldmont-plus", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-march=silvermont", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-march=skylake", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-march=corei7", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json new file mode 100644 index 00000000..fd81ad1e --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json @@ -0,0 +1,220 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-noccache", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=someNonExistingPath" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-nopie", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-D__KERNEL__", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-fno-stack-protector", + "-D__KERNEL__", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "--sysroot=xyz", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "--sysroot=xyz", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden.json deleted file mode 100644 index 7414b94c..00000000 --- a/compiler_wrapper/testdata/cros_hardened_noccache_golden.json +++ /dev/null @@ -1,1273 +0,0 @@ -[ - { - "name": "gcc path", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang path", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang++", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang++", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "CLANG=somepath/clang" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "somepath/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/somedir/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "/somedir/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/somedir/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "gcc clang-syntax", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - } - }, - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - } - }, - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-fno-reorder-blocks-and-partition", - "-Wno-unused-local-typedefs", - "-Wno-maybe-uninitialized", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-mno-movbe" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "bisect", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "BISECT_STAGE=someBisectStage", - "BISECT_DIR=someBisectDir" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/python2", - "args": [ - "-c", - "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", - "someBisectStage", - "someBisectDir", - "/usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "BISECT_STAGE=someBisectStage", - "BISECT_DIR=someBisectDir" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/python2", - "args": [ - "-c", - "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", - "someBisectStage", - "someBisectDir", - "/usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "force disable werror", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-Wno-error" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-Wno-error" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang-tidy", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - }, - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerrorclang-tidy failed" - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-grecord-gcc-switches", - "-fno-addrsig", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fstack-protector-strong", - "-fPIE", - "-pie", - "-D_FORTIFY_SOURCE=2", - "-fno-omit-frame-pointer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - } -] diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json new file mode 100644 index 00000000..fc1e8bd4 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json @@ -0,0 +1,102 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json new file mode 100644 index 00000000..78169313 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json @@ -0,0 +1,323 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang++", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang++", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "CLANG=somepath/clang" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "somepath/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/somedir/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "/somedir/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/somedir/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json new file mode 100644 index 00000000..6776196f --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json @@ -0,0 +1,335 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + }, + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerrorclang-tidy failed" + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json new file mode 100644 index 00000000..4fd9304b --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json @@ -0,0 +1,186 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-Wno-error" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-Wno-error" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json new file mode 100644 index 00000000..341de8a3 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json @@ -0,0 +1,237 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + } + }, + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + } + }, + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_path.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_path.json new file mode 100644 index 00000000..59cbf865 --- /dev/null +++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_path.json @@ -0,0 +1,70 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-fno-reorder-blocks-and-partition", + "-Wno-unused-local-typedefs", + "-Wno-maybe-uninitialized", + "-fstack-protector-strong", + "-fPIE", + "-pie", + "-D_FORTIFY_SOURCE=2", + "-fno-omit-frame-pointer", + "main.cc", + "-mno-movbe" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden.json b/compiler_wrapper/testdata/cros_nonhardened_golden.json deleted file mode 100644 index 059ce2c4..00000000 --- a/compiler_wrapper/testdata/cros_nonhardened_golden.json +++ /dev/null @@ -1,3436 +0,0 @@ -[ - { - "name": "gcc path", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "gcc [main.cc] target specific", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-eabi-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-eabi-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-eabi", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-win-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-win-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-win-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv7m-cros-linux-gnu-gcc.real", - "--sysroot=/usr/armv7m-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-mthumb", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-eabi-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv7m-cros-linux-eabi-gcc.real", - "--sysroot=/usr/armv7m-cros-linux-eabi", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-win-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv7m-cros-win-gnu-gcc.real", - "--sysroot=/usr/armv7m-cros-win-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-mthumb", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv8m-cros-linux-gnu-gcc.real", - "--sysroot=/usr/armv8m-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-mthumb", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-eabi-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv8m-cros-linux-eabi-gcc.real", - "--sysroot=/usr/armv8m-cros-linux-eabi", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-win-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./armv8m-cros-win-gnu-gcc.real", - "--sysroot=/usr/armv8m-cros-win-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-mthumb", - "main.cc" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - } - ] - }, - { - "name": "gcc sysroot wrapper common", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-noccache", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=someNonExistingPath" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-nopie", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-D__KERNEL__", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-fno-stack-protector", - "-D__KERNEL__", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "--sysroot=xyz", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "--sysroot=xyz", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - } - ] - }, - { - "name": "gcc sanitizer args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=kernel-address", - "-Wl,--no-undefined", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-fsanitize=kernel-address", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=kernel-address", - "-Wl,-z,defs", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-fsanitize=kernel-address", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=1", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-fsanitize=kernel-address", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=2", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-fsanitize=kernel-address", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-fsanitize=fuzzer", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-fsanitize=fuzzer", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - } - ] - }, - { - "name": "gcc specific args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-march=goldmont", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-march=silvermont", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-march=goldmont-plus", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-march=silvermont", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-march=skylake", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "-march=corei7", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - } - ] - }, - { - "name": "gcc clang-syntax", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - } - }, - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-clang-syntax", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-fsyntax-only", - "-stdlib=libstdc++" - ] - } - }, - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang path", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang++", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang++", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "CLANG=somepath/clang" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "somepath/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "/somedir/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "/somedir/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-path=/somedir", - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "/somedir/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-resource-dir=someResourceDir", - "--gcc-toolchain=/usr", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang [main.cc] target specific", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-eabi-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-eabi", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-win-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-win-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-mthumb", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-eabi-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-linux-eabi", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-win-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-win-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-mthumb", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-mthumb", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-eabi-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-linux-eabi", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-win-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-win-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-mthumb", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "clang [-ftrapv main.cc] target specific", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-eabi-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-eabi", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-win-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-win-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-mthumb", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-linux-eabi-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-linux-eabi", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv7m-cros-win-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv7m-cros-win-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-mthumb", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv7m-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-mthumb", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-linux-eabi-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-linux-eabi", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-linux-eabi" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./armv8m-cros-win-gnu-clang", - "args": [ - "-ftrapv", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/armv8m-cros-win-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-mthumb", - "-ftrapv", - "main.cc", - "-B../../bin", - "-target", - "armv8m-cros-win-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "clang sysroot wrapper common", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc", - "args": [ - "-noccache", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "./x86_64-cros-linux-gnu-gcc.real", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Wno-maybe-uninitialized", - "-Wno-unused-local-typedefs", - "-Wno-deprecated-declarations", - "-Wtrampolines", - "main.cc", - "-mno-movbe" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=someNonExistingPath" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-nopie", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-D__KERNEL__", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fno-stack-protector", - "-D__KERNEL__", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "--sysroot=xyz", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "--sysroot=xyz", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "clang sanitizer args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-Wl,--no-undefined", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fsanitize=kernel-address", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-Wl,-z,defs", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fsanitize=kernel-address", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=1", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fsanitize=kernel-address", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=2", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fsanitize=kernel-address", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-fsanitize=fuzzer", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-fno-experimental-new-pass-manager", - "-fsanitize=fuzzer", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "clang specific args", - "records": [ - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-mno-movbe", - "-pass-exit-codes", - "-Wclobbered", - "-Wno-psabi", - "-Wlogical-op", - "-Wmissing-parameter-type", - "-Wold-style-declaration", - "-Woverride-init", - "-Wunsafe-loop-optimizations", - "-Wstrict-aliasing=abc", - "-finline-limit=abc", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-error=cpp", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-Wno-#warnings", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-error=maybe-uninitialized", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-Wno-error=uninitialized", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-error=unused-but-set-variable", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-Wno-error=unused-variable", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wno-unused-but-set-variable", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-Wno-unused-variable", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Wunused-but-set-variable", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-Wunused-variable", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "-Xclang-only=-someflag", - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "-someflag", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - } - ] - }, - { - "name": "bisect", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "BISECT_STAGE=someBisectStage", - "BISECT_DIR=someBisectDir" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/python2", - "args": [ - "-c", - "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", - "someBisectStage", - "someBisectDir", - "/usr/bin/ccache", - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "BISECT_STAGE=someBisectStage", - "BISECT_DIR=someBisectDir" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "/usr/bin/python2", - "args": [ - "-c", - "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", - "someBisectStage", - "someBisectDir", - "/usr/bin/ccache", - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "force disable werror", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-Wno-error" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "FORCE_DISABLE_WERROR=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stderr": "-Werror originalerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "ccache", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu", - "-Wno-error" - ], - "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", - "CCACHE_DIR=/var/cache/distfiles/ccache", - "CCACHE_UMASK=002", - "CCACHE_CPP2=yes" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - }, - { - "name": "clang-tidy", - "records": [ - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - }, - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - } - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerrorclang-tidy failed" - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - } - ] - }, - { - "wd": "/tmp/stable", - "env": [ - "WITH_TIDY=1", - "GOMACC_PATH=/tmp/stable/gomacc" - ], - "wrapper": { - "cmd": { - "path": "./x86_64-cros-linux-gnu-clang", - "args": [ - "main.cc" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - }, - "cmds": [ - { - "cmd": { - "path": "../../usr/bin/clang", - "args": [ - "--print-resource-dir" - ] - }, - "stdout": "someResourceDir" - }, - { - "cmd": { - "path": "../../usr/bin/clang-tidy", - "args": [ - "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", - "main.cc", - "--", - "-resource-dir=someResourceDir", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - } - }, - { - "cmd": { - "path": "/tmp/stable/gomacc", - "args": [ - "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", - "-Qunused-arguments", - "-Wno-tautological-constant-compare", - "-Wno-tautological-unsigned-enum-zero-compare", - "-Wno-unknown-warning-option", - "-Wno-section", - "-static-libgcc", - "main.cc", - "-B../../bin", - "-target", - "x86_64-cros-linux-gnu" - ] - }, - "stdout": "somemessage", - "stderr": "someerror", - "exitcode": 1 - } - ] - } - ] - } -] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json b/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json new file mode 100644 index 00000000..e8a5653c --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json @@ -0,0 +1,102 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/usr/bin/ccache", + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/usr/bin/ccache", + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json new file mode 100644 index 00000000..a90fd6b4 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json @@ -0,0 +1,366 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-eabi", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-win-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-mthumb", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-linux-eabi", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-win-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-mthumb", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-mthumb", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-linux-eabi", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-win-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-mthumb", + "-ftrapv", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json new file mode 100644 index 00000000..cc0a2ee9 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json @@ -0,0 +1,348 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-eabi", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-win-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-mthumb", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-linux-eabi", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv7m-cros-win-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-mthumb", + "main.cc", + "-B../../bin", + "-target", + "armv7m-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-mthumb", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-linux-eabi", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-linux-eabi" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/armv8m-cros-win-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-mthumb", + "main.cc", + "-B../../bin", + "-target", + "armv8m-cros-win-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json new file mode 100644 index 00000000..0141b7bb --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json @@ -0,0 +1,316 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang++", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang++", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "CLANG=somepath/clang" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "somepath/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "/somedir/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "/somedir/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "/somedir/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json new file mode 100644 index 00000000..05209ee3 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json @@ -0,0 +1,207 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-Wl,--no-undefined", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fsanitize=kernel-address", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-Wl,-z,defs", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fsanitize=kernel-address", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=1", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fsanitize=kernel-address", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fsanitize=kernel-address", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=fuzzer", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fno-experimental-new-pass-manager", + "-fsanitize=fuzzer", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json new file mode 100644 index 00000000..c8d16bfe --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json @@ -0,0 +1,291 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-mno-movbe", + "-pass-exit-codes", + "-Wclobbered", + "-Wno-psabi", + "-Wlogical-op", + "-Wmissing-parameter-type", + "-Wold-style-declaration", + "-Woverride-init", + "-Wunsafe-loop-optimizations", + "-Wstrict-aliasing=abc", + "-finline-limit=abc", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=cpp", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-Wno-#warnings", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=maybe-uninitialized", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-Wno-error=uninitialized", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=unused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-Wno-error=unused-variable", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-unused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-Wno-unused-variable", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wunused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-Wunused-variable", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-only=-someflag", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-someflag", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json new file mode 100644 index 00000000..7f9760d1 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json @@ -0,0 +1,225 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-noccache", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=someNonExistingPath" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-nopie", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-D__KERNEL__", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "-fno-stack-protector", + "-D__KERNEL__", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "--sysroot=xyz", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "../../usr/bin/clang", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "--sysroot=xyz", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json new file mode 100644 index 00000000..22dd9ddc --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json @@ -0,0 +1,279 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + }, + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerrorclang-tidy failed" + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "../../usr/bin/clang-tidy", + "args": [ + "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json new file mode 100644 index 00000000..a99c1067 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json @@ -0,0 +1,186 @@ +[ + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-Wno-error" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "ccache", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-Wno-error" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002", + "CCACHE_CPP2=yes" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json new file mode 100644 index 00000000..81b81a2f --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json @@ -0,0 +1,209 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + } + }, + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-clang-syntax", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "../../usr/bin/clang", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Qunused-arguments", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-section", + "-static-libgcc", + "main.cc", + "-B../../bin", + "-target", + "x86_64-cros-linux-gnu", + "-fsyntax-only", + "-stdlib=libstdc++" + ] + } + }, + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_maincc_target_specific.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_maincc_target_specific.json new file mode 100644 index 00000000..ff281966 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_maincc_target_specific.json @@ -0,0 +1,297 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-eabi-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-eabi", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-win-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-win-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv7m-cros-linux-gnu-gcc.real", + "--sysroot=/usr/armv7m-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-mthumb", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv7m-cros-linux-eabi-gcc.real", + "--sysroot=/usr/armv7m-cros-linux-eabi", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv7m-cros-win-gnu-gcc.real", + "--sysroot=/usr/armv7m-cros-win-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-mthumb", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv8m-cros-linux-gnu-gcc.real", + "--sysroot=/usr/armv8m-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-mthumb", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv8m-cros-linux-eabi-gcc.real", + "--sysroot=/usr/armv8m-cros-linux-eabi", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-linux-eabi", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./armv8m-cros-win-gnu-gcc.real", + "--sysroot=/usr/armv8m-cros-win-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-mthumb", + "main.cc" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_path.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_path.json new file mode 100644 index 00000000..302b57e7 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_path.json @@ -0,0 +1,74 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sanitizer_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sanitizer_args.json new file mode 100644 index 00000000..639dc524 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sanitizer_args.json @@ -0,0 +1,181 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=kernel-address", + "-Wl,--no-undefined", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-fsanitize=kernel-address", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=kernel-address", + "-Wl,-z,defs", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-fsanitize=kernel-address", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=1", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-fsanitize=kernel-address", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-fsanitize=kernel-address", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-fsanitize=fuzzer", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-fsanitize=fuzzer", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_specific_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_specific_args.json new file mode 100644 index 00000000..6e519429 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_specific_args.json @@ -0,0 +1,107 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-march=goldmont", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-march=silvermont", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-march=goldmont-plus", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-march=silvermont", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-march=skylake", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-march=corei7", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json new file mode 100644 index 00000000..26481cb5 --- /dev/null +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json @@ -0,0 +1,201 @@ +[ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-noccache", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc.real", + "args": [ + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=someNonExistingPath" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/gomacc", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-nopie", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "-D__KERNEL__", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "-fno-stack-protector", + "-D__KERNEL__", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-gcc", + "args": [ + "--sysroot=xyz", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/ccache", + "args": [ + "./x86_64-cros-linux-gnu-gcc.real", + "-Wno-maybe-uninitialized", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wtrampolines", + "--sysroot=xyz", + "main.cc", + "-mno-movbe" + ], + "env_updates": [ + "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", + "CCACHE_DIR=/var/cache/distfiles/ccache", + "CCACHE_UMASK=002" + ] + } + } + ] + } +] |