build: remove context.verbose

This commit is contained in:
xushiwei
2024-06-21 15:31:18 +08:00
parent e188925d2b
commit b204b90ffc

View File

@@ -175,15 +175,15 @@ func Do(args []string, conf *Config) {
patches := make(cl.Patches, len(altPkgPaths)) patches := make(cl.Patches, len(altPkgPaths))
altSSAPkgs(progSSA, patches, altPkgs[1:], verbose) altSSAPkgs(progSSA, patches, altPkgs[1:], verbose)
ctx := &context{progSSA, prog, dedup, patches, make(map[string]none), mode, verbose} ctx := &context{progSSA, prog, dedup, patches, make(map[string]none), mode}
pkgs := buildAllPkgs(ctx, initial) pkgs := buildAllPkgs(ctx, initial, verbose)
// TODO(xsw): maybe we need trace runtime sometimes // TODO(xsw): maybe we need trace runtime sometimes
llssa.SetDebug(0) llssa.SetDebug(0)
cl.SetDebug(0) cl.SetDebug(0)
var llFiles []string var llFiles []string
dpkg := buildAllPkgs(ctx, altPkgs[noRt:]) dpkg := buildAllPkgs(ctx, altPkgs[noRt:], verbose)
for _, pkg := range dpkg { for _, pkg := range dpkg {
if !strings.HasSuffix(pkg.ExportFile, ".ll") { if !strings.HasSuffix(pkg.ExportFile, ".ll") {
continue continue
@@ -232,12 +232,11 @@ type context struct {
patches cl.Patches patches cl.Patches
built map[string]none built map[string]none
mode Mode mode Mode
verbose bool
} }
func buildAllPkgs(ctx *context, initial []*packages.Package) (pkgs []*aPackage) { func buildAllPkgs(ctx *context, initial []*packages.Package, verbose bool) (pkgs []*aPackage) {
prog := ctx.prog prog := ctx.prog
pkgs, errPkgs := allPkgs(ctx, initial) pkgs, errPkgs := allPkgs(ctx, initial, verbose)
for _, errPkg := range errPkgs { for _, errPkg := range errPkgs {
for _, err := range errPkg.Errors { for _, err := range errPkg.Errors {
fmt.Fprintln(os.Stderr, err) fmt.Fprintln(os.Stderr, err)
@@ -259,7 +258,7 @@ func buildAllPkgs(ctx *context, initial []*packages.Package) (pkgs []*aPackage)
pkg.ExportFile = "" pkg.ExportFile = ""
case cl.PkgLinkIR, cl.PkgLinkExtern, cl.PkgPyModule: case cl.PkgLinkIR, cl.PkgLinkExtern, cl.PkgPyModule:
if isPkgInLLGo(pkg.PkgPath) { if isPkgInLLGo(pkg.PkgPath) {
pkg.ExportFile = concatPkgLinkFiles(pkg, ctx.verbose) pkg.ExportFile = concatPkgLinkFiles(pkg, verbose)
} else { } else {
// panic("todo") // panic("todo")
// TODO(xsw): support packages out of llgo // TODO(xsw): support packages out of llgo
@@ -301,7 +300,7 @@ func buildAllPkgs(ctx *context, initial []*packages.Package) (pkgs []*aPackage)
} }
} }
default: default:
buildPkg(ctx, aPkg) buildPkg(ctx, aPkg, verbose)
setNeedRuntimeOrPyInit(pkg, prog.NeedRuntime, prog.NeedPyInit) setNeedRuntimeOrPyInit(pkg, prog.NeedRuntime, prog.NeedPyInit)
} }
} }
@@ -401,10 +400,10 @@ func linkMainPkg(pkg *packages.Package, pkgs []*aPackage, llFiles []string, conf
return return
} }
func buildPkg(ctx *context, aPkg *aPackage) { func buildPkg(ctx *context, aPkg *aPackage, verbose bool) {
pkg := aPkg.Package pkg := aPkg.Package
pkgPath := pkg.PkgPath pkgPath := pkg.PkgPath
if debugBuild || ctx.verbose { if debugBuild || verbose {
fmt.Fprintln(os.Stderr, pkgPath) fmt.Fprintln(os.Stderr, pkgPath)
} }
if canSkipToBuild(pkgPath) { if canSkipToBuild(pkgPath) {
@@ -420,7 +419,7 @@ func buildPkg(ctx *context, aPkg *aPackage) {
if needLLFile(ctx.mode) { if needLLFile(ctx.mode) {
pkg.ExportFile += ".ll" pkg.ExportFile += ".ll"
os.WriteFile(pkg.ExportFile, []byte(ret.String()), 0644) os.WriteFile(pkg.ExportFile, []byte(ret.String()), 0644)
if debugBuild || ctx.verbose { if debugBuild || verbose {
fmt.Fprintf(os.Stderr, "==> Export %s: %s\n", aPkg.PkgPath, pkg.ExportFile) fmt.Fprintf(os.Stderr, "==> Export %s: %s\n", aPkg.PkgPath, pkg.ExportFile)
} }
} }
@@ -468,9 +467,8 @@ type aPackage struct {
LPkg llssa.Package LPkg llssa.Package
} }
func allPkgs(ctx *context, initial []*packages.Package) (all []*aPackage, errs []*packages.Package) { func allPkgs(ctx *context, initial []*packages.Package, verbose bool) (all []*aPackage, errs []*packages.Package) {
prog := ctx.progSSA prog := ctx.progSSA
verbose := ctx.verbose
built := ctx.built built := ctx.built
packages.Visit(initial, nil, func(p *packages.Package) { packages.Visit(initial, nil, func(p *packages.Package) {
if p.Types != nil && !p.IllTyped { if p.Types != nil && !p.IllTyped {