aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLucio De Re <lucio.dere@gmail.com>2013-09-06 16:15:44 +1000
committerRob Pike <r@golang.org>2013-09-06 16:15:44 +1000
commitfd7ddad160bfcfd861db00e5d4df01ceaf0a66e9 (patch)
tree5042912f46f0046b8287b926ab3d78f8a80617cb /src
parent6833d1b43643d8102be45cb6b4ee5912cafed8e7 (diff)
downloadgo-fd7ddad160bfcfd861db00e5d4df01ceaf0a66e9.tar.xz
cmd/dist: Plan 9 build needs an additional include path
cmd/cc: bv.c imports libc.h twice When using the Plan 9 compiler, the invocation #include <../ld/textflag.h> works for the toolchain, but not for the MACH library. Module cmd/cc/bv.c includes libc.h and "cc.h", which in turn also includes libc.h. In the Plan 9 context, this causes a number of duplicate definitions. R=golang-dev, rsc, r CC=golang-dev https://golang.org/cl/13303047
Diffstat (limited to 'src')
-rw-r--r--src/cmd/cc/bv.c1
-rw-r--r--src/cmd/dist/build.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/src/cmd/cc/bv.c b/src/cmd/cc/bv.c
index 38d9e4377c..51b7f4076f 100644
--- a/src/cmd/cc/bv.c
+++ b/src/cmd/cc/bv.c
@@ -3,7 +3,6 @@
// license that can be found in the LICENSE file.
#include <u.h>
-#include <libc.h>
#include "cc.h"
enum {
diff --git a/src/cmd/dist/build.c b/src/cmd/dist/build.c
index f02bfd8e71..f46771d20d 100644
--- a/src/cmd/dist/build.c
+++ b/src/cmd/dist/build.c
@@ -932,6 +932,8 @@ install(char *dir)
vadd(&compile, "-Bp+");
vadd(&compile, bpathf(&b, "-I%s/include/plan9", goroot));
vadd(&compile, bpathf(&b, "-I%s/include/plan9/%s", goroot, gohostarch));
+ // Work around Plan 9 C compiler's handling of #include with .. path.
+ vadd(&compile, bpathf(&b, "-I%s/src/cmd/ld", goroot));
} else {
vcopy(&compile, gccargs.p, gccargs.len);
vadd(&compile, "-c");