github.com/gocuntian/go@v0.0.0-20160610041250-fee02d270bf8/src/cmd/link/main.go (about) 1 // Copyright 2015 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 package main 6 7 import ( 8 "cmd/internal/obj" 9 "cmd/link/internal/amd64" 10 "cmd/link/internal/arm" 11 "cmd/link/internal/arm64" 12 "cmd/link/internal/mips64" 13 "cmd/link/internal/ppc64" 14 "cmd/link/internal/s390x" 15 "cmd/link/internal/x86" 16 "fmt" 17 "os" 18 ) 19 20 func main() { 21 switch obj.Getgoarch() { 22 default: 23 fmt.Fprintf(os.Stderr, "link: unknown architecture %q\n", obj.Getgoarch()) 24 os.Exit(2) 25 case "386": 26 x86.Main() 27 case "amd64", "amd64p32": 28 amd64.Main() 29 case "arm": 30 arm.Main() 31 case "arm64": 32 arm64.Main() 33 case "mips64", "mips64le": 34 mips64.Main() 35 case "ppc64", "ppc64le": 36 ppc64.Main() 37 case "s390x": 38 s390x.Main() 39 } 40 }