mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/link: move build/link mode globals into ctxt
Replace Buildmode with BuildMode and Linkmode with LinkMode. For #22095 Change-Id: I51a6f5719d107727bca29ec8e68e3e9d87e31e33 Reviewed-on: https://go-review.googlesource.com/68334 Run-TryBot: David Crawshaw <crawshaw@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
parent
9f9bb97420
commit
2e8545531e
22 changed files with 287 additions and 292 deletions
|
|
@ -48,8 +48,6 @@ var (
|
|||
)
|
||||
|
||||
func init() {
|
||||
flag.Var(&Linkmode, "linkmode", "set link `mode`")
|
||||
flag.Var(&Buildmode, "buildmode", "set build `mode`")
|
||||
flag.Var(&rpath, "r", "set the ELF dynamic linker search `path` to dir1:dir2:...")
|
||||
}
|
||||
|
||||
|
|
@ -118,6 +116,8 @@ func Main(arch *sys.Arch, theArch Arch) {
|
|||
if ctxt.Arch.Family == sys.AMD64 && objabi.GOOS == "plan9" {
|
||||
flag.BoolVar(&Flag8, "8", false, "use 64-bit addresses in symbol table")
|
||||
}
|
||||
flag.Var(&ctxt.LinkMode, "linkmode", "set link `mode`")
|
||||
flag.Var(&ctxt.BuildMode, "buildmode", "set build `mode`")
|
||||
objabi.Flagfn1("B", "add an ELF NT_GNU_BUILD_ID `note` when using ELF", addbuildinfo)
|
||||
objabi.Flagfn1("L", "add specified `directory` to library path", func(a string) { Lflag(ctxt, a) })
|
||||
objabi.Flagfn0("V", "print version and exit", doversion)
|
||||
|
|
@ -140,11 +140,11 @@ func Main(arch *sys.Arch, theArch Arch) {
|
|||
}
|
||||
|
||||
startProfile()
|
||||
if Buildmode == BuildmodeUnset {
|
||||
Buildmode = BuildmodeExe
|
||||
if ctxt.BuildMode == BuildModeUnset {
|
||||
ctxt.BuildMode = BuildModeExe
|
||||
}
|
||||
|
||||
if Buildmode != BuildmodeShared && flag.NArg() != 1 {
|
||||
if ctxt.BuildMode != BuildModeShared && flag.NArg() != 1 {
|
||||
usage()
|
||||
}
|
||||
|
||||
|
|
@ -174,8 +174,8 @@ func Main(arch *sys.Arch, theArch Arch) {
|
|||
ctxt.Logf("HEADER = -H%d -T0x%x -D0x%x -R0x%x\n", Headtype, uint64(*FlagTextAddr), uint64(*FlagDataAddr), uint32(*FlagRound))
|
||||
}
|
||||
|
||||
switch Buildmode {
|
||||
case BuildmodeShared:
|
||||
switch ctxt.BuildMode {
|
||||
case BuildModeShared:
|
||||
for i := 0; i < flag.NArg(); i++ {
|
||||
arg := flag.Arg(i)
|
||||
parts := strings.SplitN(arg, "=", 2)
|
||||
|
|
@ -189,7 +189,7 @@ func Main(arch *sys.Arch, theArch Arch) {
|
|||
pkglistfornote = append(pkglistfornote, '\n')
|
||||
addlibpath(ctxt, "command line", "command line", file, pkgpath, "")
|
||||
}
|
||||
case BuildmodePlugin:
|
||||
case BuildModePlugin:
|
||||
addlibpath(ctxt, "command line", "command line", flag.Arg(0), *flagPluginPath, "")
|
||||
default:
|
||||
addlibpath(ctxt, "command line", "command line", flag.Arg(0), "main", "")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue