70 lines
2.5 KiB
Text
70 lines
2.5 KiB
Text
|
See ../README.
|
||
|
|
||
|
This is the runtime support library for the Go programming language.
|
||
|
This library is intended for use with the Go frontend.
|
||
|
|
||
|
This library should not be stripped when it is installed. Go code
|
||
|
relies on being able to look up file/line information, which comes
|
||
|
from the debugging info using the libbacktrace library.
|
||
|
|
||
|
The library has only been tested on GNU/Linux using glibc, and on
|
||
|
Solaris. It should not be difficult to port to other operating
|
||
|
systems.
|
||
|
|
||
|
Directories:
|
||
|
|
||
|
go
|
||
|
A copy of the Go library from http://golang.org/, with several
|
||
|
changes for gccgo.
|
||
|
|
||
|
runtime
|
||
|
Runtime functions, written in C, which are called directly by the
|
||
|
compiler or by the library.
|
||
|
|
||
|
Contributing
|
||
|
============
|
||
|
|
||
|
To contribute patches to the files in this directory, please see
|
||
|
http://golang.org/doc/gccgo_contribute.html .
|
||
|
|
||
|
The master copy of these files is hosted at
|
||
|
http://code.google.com/p/gofrontend . Changes to these files require
|
||
|
signing a Google contributor license agreement. If you are the
|
||
|
copyright holder, you will need to agree to the individual contributor
|
||
|
license agreement at
|
||
|
http://code.google.com/legal/individual-cla-v1.0.html. This agreement
|
||
|
can be completed online.
|
||
|
|
||
|
If your organization is the copyright holder, the organization will
|
||
|
need to agree to the corporate contributor license agreement at
|
||
|
http://code.google.com/legal/corporate-cla-v1.0.html.
|
||
|
|
||
|
If the copyright holder for your code has already completed the
|
||
|
agreement in connection with another Google open source project, it
|
||
|
does not need to be completed again.
|
||
|
|
||
|
Debugging
|
||
|
=========
|
||
|
|
||
|
This describes how to test libgo when built as part of gccgo.
|
||
|
|
||
|
To test a specific package, cd to the libgo build directory
|
||
|
(TARGET/libgo) and run `make PKG/check`. For example, `make
|
||
|
bytes/check`.
|
||
|
|
||
|
To see the exact commands that it runs, including how the compiler is
|
||
|
invoked, run `make GOTESTFLAGS=--trace bytes/check`. This will
|
||
|
display the commands if the test fails. If the test passes, the
|
||
|
commands and other output will be visible in a file named
|
||
|
check-testlog in a subdirectory with the name of the package being
|
||
|
checked. In the case of bytes/check, this will create
|
||
|
bytes/check-testlog.
|
||
|
|
||
|
To leave the test program behind, run `make GOTESTFLAGS=--keep
|
||
|
bytes/check`. That will leave a gotestNNNN/test directory in the
|
||
|
libgo build directory. In that directory you can run
|
||
|
`LD_LIBRARY_PATH=../../.libs ./a.out -test.short` to run the tests.
|
||
|
You can run specific failing tests using a -test.run option. You can
|
||
|
see the tests being run with the -test.v option. You can run the
|
||
|
program under a debugger such as gdb.
|