From: Lucio De Re Date: Fri, 6 Sep 2013 06:15:44 +0000 (+1000) Subject: cmd/dist: Plan 9 build needs an additional include path X-Git-Tag: go1.2rc2~339 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=fd7ddad160bfcfd861db00e5d4df01ceaf0a66e9;p=gostls13.git 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 --- 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 -#include #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");