aboutsummaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2020-05-13 12:48:33 +0200
committerDmitry Vyukov <dvyukov@google.com>2020-05-13 13:05:41 +0200
commita99fd8b014711b324bb538e35ce98fea57f4c4c1 (patch)
tree892e5ebe18ae5a5371404de74fb31855c87504e9 /sys
parent88a97d1a7aaeeb0122cce296c696ad7927ed052e (diff)
targets: introduce osCommon.cflags, make -static a common flag on Linux
Signed-off-by: Alexander Potapenko <glider@google.com>
Diffstat (limited to 'sys')
-rw-r--r--sys/targets/targets.go15
1 files changed, 9 insertions, 6 deletions
diff --git a/sys/targets/targets.go b/sys/targets/targets.go
index f2b681407..32a04e495 100644
--- a/sys/targets/targets.go
+++ b/sys/targets/targets.go
@@ -63,6 +63,8 @@ type osCommon struct {
KernelObject string
// Name of cpp(1) executable.
CPP string
+ // Common CFLAGS for this OS.
+ cflags []string
}
func Get(OS, arch string) *Target {
@@ -135,7 +137,7 @@ var List = map[string]map[string]*Target{
"amd64": {
PtrSize: 8,
PageSize: 4 << 10,
- CFlags: []string{"-m64", "-static"},
+ CFlags: []string{"-m64"},
CCompilerPrefix: "x86_64-linux-gnu-",
KernelArch: "x86_64",
KernelHeaderArch: "x86",
@@ -150,7 +152,7 @@ var List = map[string]map[string]*Target{
PtrSize: 4,
PageSize: 4 << 10,
Int64Alignment: 4,
- CFlags: []string{"-m32", "-static"},
+ CFlags: []string{"-m32"},
CCompilerPrefix: "x86_64-linux-gnu-",
KernelArch: "i386",
KernelHeaderArch: "x86",
@@ -158,7 +160,6 @@ var List = map[string]map[string]*Target{
"arm64": {
PtrSize: 8,
PageSize: 4 << 10,
- CFlags: []string{"-static"},
CCompilerPrefix: "aarch64-linux-gnu-",
KernelArch: "arm64",
KernelHeaderArch: "arm64",
@@ -167,7 +168,7 @@ var List = map[string]map[string]*Target{
VMArch: "arm64",
PtrSize: 4,
PageSize: 4 << 10,
- CFlags: []string{"-D__LINUX_ARM_ARCH__=6", "-march=armv6", "-static"},
+ CFlags: []string{"-D__LINUX_ARM_ARCH__=6", "-march=armv6"},
CCompilerPrefix: "arm-linux-gnueabi-",
KernelArch: "arm",
KernelHeaderArch: "arm",
@@ -176,7 +177,7 @@ var List = map[string]map[string]*Target{
VMArch: "mips64le",
PtrSize: 8,
PageSize: 4 << 10,
- CFlags: []string{"-static", "-march=mips64r2", "-mabi=64", "-EL"},
+ CFlags: []string{"-march=mips64r2", "-mabi=64", "-EL"},
CCompilerPrefix: "mips64el-linux-gnuabi64-",
KernelArch: "mips",
KernelHeaderArch: "mips",
@@ -184,7 +185,7 @@ var List = map[string]map[string]*Target{
"ppc64le": {
PtrSize: 8,
PageSize: 4 << 10,
- CFlags: []string{"-D__powerpc64__", "-static"},
+ CFlags: []string{"-D__powerpc64__"},
CCompilerPrefix: "powerpc64le-linux-gnu-",
KernelArch: "powerpc",
KernelHeaderArch: "powerpc",
@@ -334,6 +335,7 @@ var oses = map[string]osCommon{
ExecutorUsesShmem: true,
ExecutorUsesForkServer: true,
KernelObject: "vmlinux",
+ cflags: []string{"-static"},
},
"freebsd": {
SyscallNumbers: true,
@@ -461,6 +463,7 @@ func initTarget(target *Target, OS, arch string) {
target.CCompiler = fmt.Sprintf("cant-build-%v-on-%v", target.OS, runtime.GOOS)
target.CPP = target.CCompiler
}
+ target.CFlags = append(append([]string{}, target.osCommon.cflags...), target.CFlags...)
target.CFlags = append(append([]string{}, commonCFlags...), target.CFlags...)
}