Merge pull request #18064 from hypriot/17478-fix-for-arm

Change casting of utsname.Machine to fix make binary for ARM
Upstream-commit: 43cf875633b63983bbbb7829102183242404eef7
Component: engine
This commit is contained in:
Antonio Murdaca
2015-11-19 19:42:20 +01:00
3 changed files with 36 additions and 12 deletions
@@ -14,15 +14,3 @@ func GetRuntimeArchitecture() (string, error) {
}
return charsToString(utsname.Machine), nil
}
func charsToString(ca [65]int8) string {
s := make([]byte, len(ca))
var lens int
for ; lens < len(ca); lens++ {
if ca[lens] == 0 {
break
}
s[lens] = uint8(ca[lens])
}
return string(s[0:lens])
}
@@ -0,0 +1,18 @@
// +build linux,386 linux,amd64 linux,arm64
// see golang's sources src/syscall/ztypes_linux_*.go that use int8
package platform
// Convert the OS/ARCH-specific utsname.Machine to string
// given as an array of signed int8
func charsToString(ca [65]int8) string {
s := make([]byte, len(ca))
var lens int
for ; lens < len(ca); lens++ {
if ca[lens] == 0 {
break
}
s[lens] = uint8(ca[lens])
}
return string(s[0:lens])
}
@@ -0,0 +1,18 @@
// +build linux,arm linux,ppc64 linux,ppc64le s390x
// see golang's sources src/syscall/ztypes_linux_*.go that use uint8
package platform
// Convert the OS/ARCH-specific utsname.Machine to string
// given as an array of unsigned uint8
func charsToString(ca [65]uint8) string {
s := make([]byte, len(ca))
var lens int
for ; lens < len(ca); lens++ {
if ca[lens] == 0 {
break
}
s[lens] = ca[lens]
}
return string(s[0:lens])
}