mirror of
https://github.com/goreleaser/goreleaser.git
synced 2025-01-24 04:16:27 +02:00
12c7d38eb9
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
31 lines
727 B
Go
31 lines
727 B
Go
// Package linux contains functions that are useful to generate linux packages.
|
|
package linux
|
|
|
|
import "strings"
|
|
|
|
// Arch converts a goarch to a linux-compatible arch.
|
|
func Arch(key string) string {
|
|
// XXX: list of all linux arches: `go tool dist list | grep linux`
|
|
arch := strings.TrimPrefix(key, "linux")
|
|
for _, suffix := range []string{"hardfloat", "softfloat"} {
|
|
arch = strings.TrimSuffix(arch, suffix)
|
|
}
|
|
switch arch {
|
|
case "386":
|
|
return "i386"
|
|
case "amd64":
|
|
return "amd64"
|
|
case "arm5": // GOARCH + GOARM
|
|
return "armel"
|
|
case "arm6": // GOARCH + GOARM
|
|
return "armhf"
|
|
case "arm7": // GOARCH + GOARM
|
|
return "armhf"
|
|
case "mips64le":
|
|
return "mips64el"
|
|
case "mipsle":
|
|
return "mipsel"
|
|
}
|
|
return arch
|
|
}
|