|  | 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. |