Commit 88d07b2c authored by Elias Naur's avatar Elias Naur Committed by Russ Cox

cmd/cgo: document CC_FOR_TARGET and CXX_FOR_TARGET

Update #4714

LGTM=iant, minux.ma, rsc
R=rsc, iant, r, minux.ma
CC=golang-codereviews
https://golang.org/cl/100390043
parent d9c9665f
...@@ -226,6 +226,13 @@ supports a new <code>-i</code> option to install dependencies ...@@ -226,6 +226,13 @@ supports a new <code>-i</code> option to install dependencies
of the specified target, but not the target itself. of the specified target, but not the target itself.
</p> </p>
<p>
Cross compiling with <a href="/cmd/cgo/"><code>cgo</code></a> enabled
is now supported. The CC_FOR_TARGET and CXX_FOR_TARGET environment
variables are used when running all.bash to specify the cross compilers
for C and C++ code, respectively.
</p>
<p> <p>
Finally, the go command now supports packages that import Objective-C Finally, the go command now supports packages that import Objective-C
files (suffixed <code>.m</code>) through cgo. files (suffixed <code>.m</code>) through cgo.
......
...@@ -63,6 +63,18 @@ compilers may be changed by the CC and CXX environment variables, ...@@ -63,6 +63,18 @@ compilers may be changed by the CC and CXX environment variables,
respectively; those environment variables may include command line respectively; those environment variables may include command line
options. options.
To enable cgo during cross compiling builds, set the CGO_ENABLED
environment variable to 1 when building the Go tools with make.bash.
Also, set CC_FOR_TARGET to the C cross compiler for the target. CC will
be used for compiling for the host.
After the Go tools are built, when running the go command, CC_FOR_TARGET is
ignored. The value of CC_FOR_TARGET when running make.bash is the default
compiler. However, you can set the environment variable CC, not CC_FOR_TARGET,
to control the compiler when running the go tool.
CXX_FOR_TARGET works in a similar way for C++ code.
Go references to C Go references to C
Within the Go file, C's struct field names that are keywords in Go Within the Go file, C's struct field names that are keywords in Go
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment