Split local and global cflags

Native compiler flags are currently applied in approximately:
global cflags
local cflags
local include dirs
global include dirs
global conlyflags
local conlyflags
global cppflags
local cppflags

This means that a flag that is enabled in the global cppflags
cannot be disabled in the local cflags, and an Android.bp author
must know to disable it in the local cppflags.  A better order
would be:
global cflags
global conlyflags
global cppflags
local cflags
local conlyflags
local cppflags
local include dirs
global include dirs

We are mixing both the global and local cflags into a single
variable, and similar for conlyflags and cppflags, which
prevents reordering them.  This CL prepares to reorder them
by splitting the global and local cflags into separate variables.

Bug: 143713277
Test: m native
Change-Id: Ic55a8c3516c331dc5f2af9d00e59ceca9d3e6c15
diff --git a/cc/builder.go b/cc/builder.go
index 491ebc5..5136fc8 100644
--- a/cc/builder.go
+++ b/cc/builder.go
@@ -261,8 +261,7 @@
 }
 
 type builderFlags struct {
-	globalFlags     string
-	arFlags         string
+	commonFlags     string
 	asFlags         string
 	cFlags          string
 	toolingCFlags   string // A separate set of cFlags for clang LibTooling tools
@@ -350,7 +349,7 @@
 	}
 
 	commonFlags := strings.Join([]string{
-		flags.globalFlags,
+		flags.commonFlags,
 		flags.systemIncludeFlags,
 	}, " ")
 
@@ -567,9 +566,6 @@
 	if !ctx.Darwin() {
 		arFlags += " -format=gnu"
 	}
-	if flags.arFlags != "" {
-		arFlags += " " + flags.arFlags
-	}
 
 	ctx.Build(pctx, android.BuildParams{
 		Rule:        ar,