targets

package
v0.0.0-...-4e6bda9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 20, 2018 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var List = map[string]map[string]*Target{
	"linux": map[string]*Target{
		"amd64": {
			PtrSize:          8,
			CArch:            []string{"__x86_64__"},
			CFlags:           []string{"-m64"},
			CrossCFlags:      []string{"-m64"},
			CCompilerPrefix:  "x86_64-linux-gnu-",
			KernelArch:       "x86_64",
			KernelHeaderArch: "x86",
		},
		"386": {
			PtrSize:          4,
			CArch:            []string{"__i386__"},
			CFlags:           []string{"-m32"},
			CrossCFlags:      []string{"-m32"},
			CCompilerPrefix:  "x86_64-linux-gnu-",
			KernelArch:       "i386",
			KernelHeaderArch: "x86",
		},
		"arm64": {
			PtrSize:          8,
			CArch:            []string{"__aarch64__"},
			CCompilerPrefix:  "aarch64-linux-gnu-",
			KernelArch:       "arm64",
			KernelHeaderArch: "arm64",
		},
		"arm": {
			PtrSize:          4,
			CArch:            []string{"__arm__"},
			CFlags:           []string{"-D__LINUX_ARM_ARCH__=6", "-m32"},
			CrossCFlags:      []string{"-D__LINUX_ARM_ARCH__=6", "-march=armv6t2"},
			CCompilerPrefix:  "arm-linux-gnueabihf-",
			KernelArch:       "arm",
			KernelHeaderArch: "arm",
		},
		"ppc64le": {
			PtrSize:          8,
			CArch:            []string{"__ppc64__", "__PPC64__", "__powerpc64__"},
			CFlags:           []string{"-D__powerpc64__"},
			CrossCFlags:      []string{"-D__powerpc64__"},
			CCompilerPrefix:  "powerpc64le-linux-gnu-",
			KernelArch:       "powerpc",
			KernelHeaderArch: "powerpc",
		},
	},
	"freebsd": map[string]*Target{
		"amd64": {
			PtrSize: 8,
			CArch:   []string{"__x86_64__"},
			CFlags:  []string{"-m64"},
		},
	},
	"fuchsia": map[string]*Target{
		"amd64": {
			PtrSize: 8,
			CArch:   []string{"__x86_64__"},
		},
		"arm64": {
			PtrSize: 8,
			CArch:   []string{"__aarch64__"},
		},
	},
	"windows": map[string]*Target{
		"amd64": {
			PtrSize: 8,
			CArch:   []string{"_M_X64"},
		},
	},
}
View Source
var OSList = map[string]*OS{
	"linux": {
		SyscallNumbers: true,
		SyscallPrefix:  "__NR_",
	},
	"freebsd": {
		SyscallNumbers: true,
		SyscallPrefix:  "SYS_",
	},
	"fuchsia": {
		SyscallNumbers: false,
	},
	"windows": {
		SyscallNumbers: false,
	},
}

Functions

This section is empty.

Types

type OS

type OS struct {
	// Does the OS use syscall numbers (e.g. Linux) or has interface based on functions (e.g. fuchsia).
	SyscallNumbers bool
	SyscallPrefix  string
}

type Target

type Target struct {
	OS                 string
	Arch               string
	PtrSize            uint64
	CArch              []string
	CFlags             []string
	CrossCFlags        []string
	CCompilerPrefix    string
	KernelArch         string
	KernelHeaderArch   string
	KernelCrossCompile string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL