diff --git a/cc/builder.go b/cc/builder.go index 8c8aa1754..81c09b1a1 100644 --- a/cc/builder.go +++ b/cc/builder.go @@ -44,14 +44,14 @@ var ( blueprint.RuleParams{ Depfile: "${out}.d", Deps: blueprint.DepsGCC, - Command: "${config.CcWrapper}$ccCmd -c $cFlags -MD -MF ${out}.d -o $out $in", + Command: "$relPwd ${config.CcWrapper}$ccCmd -c $cFlags -MD -MF ${out}.d -o $out $in", CommandDeps: []string{"$ccCmd"}, }, "ccCmd", "cFlags") ccNoDeps = pctx.AndroidStaticRule("ccNoDeps", blueprint.RuleParams{ - Command: "$ccCmd -c $cFlags -o $out $in", + Command: "$relPwd $ccCmd -c $cFlags -o $out $in", CommandDeps: []string{"$ccCmd"}, }, "ccCmd", "cFlags") @@ -220,7 +220,7 @@ var ( Labels: map[string]string{"type": "abi-dump", "tool": "header-abi-dumper"}, ExecStrategy: "${config.REAbiDumperExecStrategy}", Platform: map[string]string{ - remoteexec.PoolKey: "${config.RECXXPool}", + remoteexec.PoolKey: "${config.RECXXPool}", }, }, []string{"cFlags", "exportDirs"}, nil) diff --git a/cc/config/global.go b/cc/config/global.go index 1aa262132..a170652c1 100644 --- a/cc/config/global.go +++ b/cc/config/global.go @@ -53,13 +53,6 @@ var ( "-Werror=pragma-pack", "-Werror=pragma-pack-suspicious-include", "-Werror=unreachable-code-loop-increment", - - // -fdebug-compilation-dir=. is used to make both the action command line and the output - // independent of the working directory of the action. - // Using cc1 flags since RBE's input processor does not yet have the updated version - // of LLVM that promotes the cc1 flag to driver level flag. - // See: https://reviews.llvm.org/D63387 - "-Xclang,-fdebug-compilation-dir,.", } commonGlobalConlyflags = []string{} @@ -157,6 +150,10 @@ var ( var pctx = android.NewPackageContext("android/soong/cc/config") func init() { + if android.BuildOs == android.Linux { + commonGlobalCflags = append(commonGlobalCflags, "-fdebug-prefix-map=/proc/self/cwd=") + } + pctx.StaticVariable("CommonGlobalConlyflags", strings.Join(commonGlobalConlyflags, " ")) pctx.StaticVariable("DeviceGlobalCppflags", strings.Join(deviceGlobalCppflags, " ")) pctx.StaticVariable("DeviceGlobalLdflags", strings.Join(deviceGlobalLdflags, " "))