diff options
| author | Alexander Potapenko <glider@google.com> | 2020-05-13 12:48:33 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2020-05-13 13:05:41 +0200 |
| commit | a99fd8b014711b324bb538e35ce98fea57f4c4c1 (patch) | |
| tree | 892e5ebe18ae5a5371404de74fb31855c87504e9 /sys | |
| parent | 88a97d1a7aaeeb0122cce296c696ad7927ed052e (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.go | 15 |
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...) } |
